package com.integrador.dao;

import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;

import com.integrador.model.Zelador;
import com.integrador.util.Util;

public class ZeladorDAO extends FuncionarioDAO {
	
	public void update(Zelador zelador){
		String query = "UPDATE zelador SET horarioentrada = '"+ zelador.getHorarioEntrada() +"' , " + "horariosaida = '"+ zelador.getHorarioSaida() + "' where codigozelador =" + zelador.getCodigo();
		System.out.println(query);
			Statement stmt = null; 
		try {
			stmt = connection.createStatement();
			stmt.executeUpdate(query);
		} catch (SQLException e) {
			e.printStackTrace();
		} finally {
			try {
				stmt.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}	
		}
		
	}

	public List<Zelador> findByName(String name){
		if(Util.isNotNull(name)){
			String query = "SELECT * FROM zelador WHERE nomefuncionario like '%" + name +"%'";
			System.out.println(query);
			Statement stmt = null; 
			List<Zelador> lista = new ArrayList<Zelador>();
			try {
				stmt = this.connection.createStatement();
				ResultSet rs = stmt.executeQuery(query);
				
				while (rs.next()) {
					Zelador funcionario = new Zelador();
					funcionario.setCodigo(rs.getLong("codigozelador"));
					funcionario.setDataAdimissao(rs.getDate("dataadmissao"));
					funcionario.setNome(rs.getString("nomefuncionario"));
					funcionario.setHorarioEntrada(rs.getString("horarioentrada"));
					funcionario.setHorarioSaida(rs.getString("horariosaida"));
					
					lista.add(funcionario);
				}
				return lista;
				
			} catch (SQLException e) {
				e.printStackTrace();
			} finally {
				try {
					stmt.close();
				} catch (SQLException e) {
					e.printStackTrace();
				}
			}
		}
		return null;
	}

}
